#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

//void print_a(int n)
//{
//	int i = 0;
//	int flag = 1;
//	for (i = 0; i < sizeof(n) * 8; i += 2)
//	{
//		flag = 1;
//		flag <<= i;
//		if ((n & flag) != 0)
//			printf("1");
//		else
//			printf("0");
//		
//	}
//	printf("\n");
//}
//void print_b(int n)
//{
//	int i = 0;
//	int flag = 1;
//	for (i = 1; i < sizeof(n) * 8; i += 2)
//	{
//		flag = 1;
//		flag <<= i;
//		if ((n & flag) != 0)
//			printf("1");
//		else
//			printf("0");
//	}
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	print_a(n);
//	print_b(n);
//
//	return 0;
//}

//int Com(int a,int b)
//{
//	int count = 0;
//	int flag = 1;
//	while (flag)
//	{
//		if ((a & flag) != ( b & flag ))
//			count++;
//		flag <<= 1;
//	}
//	return count;
//}
//
//int main()
//{
//
//	int a = 0;
//	int b = 0;
//	scanf("%d %d", &a, &b);
//	printf("%d",Com(a, b));
//	return 0;
//
//}

int Com(int a, int b)
{
	int n = a ^ b;
	int count = 0;
	while (n)
	{
		n = (n - 1) & n;
		count++;
	}
	return count;
}

int main()
{

	int a = 0;
	int b = 0;
	scanf("%d %d", &a, &b);
	printf("%d", Com(a, b));
	return 0;

}